# 定义父类
class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    # 实例方法
    def show_info(self):
        print("我的名字是 %s 我的年龄是 %d" % (self.name, self.age))


# 定义子类(继承父类，通过在子类的()中写上父类的名字)
class Student(Person):
    def __init__(self, name, age, address):
        super().__init__(name, age)
        self.address = address

    # 重写父类的实例方法
    def show_info(self):
        # 调用父类的方法
        super().show_info()
        print("我的地址是 %s" % self.address)


# 实例化一个子类
stu = Student("张三", 20, "湖北罗田")
# 调用父类的方法
stu.show_info()
print(isinstance(stu, Student), isinstance(stu, Person))
